#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
void move(char x, char y)
{
	printf("%c -> %c\n", x, y);
}
void transfer(int n, char x, char y, char z)
{
	if (n == 1)
	{
		move(x, z);
	}
	else
	{
		transfer(n-1, x, z, y);
		move(x, z);
		transfer(n - 1, y, x, z);
	}
}
int main()
{
	int n = 0;
	scanf("%d", &n);
	transfer(n, 'A', 'B', 'C');
	return 0;
}
//int jump_steps(int n)
//{
//	if (n == 0)
//	{
//		return 0;
//	}
//	else if(n == 1)
//	{
//		return 1;
//	}
//	else
//	{
//		return jump_steps(n - 1) + jump_steps(n - 2);
//	}
//}
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	int seed = jump_steps(n);
//	printf("%d\n", seed);
//	return 0;
//}